Stored Procedures [dbo].[BAEEventSetupMoveFunctionDown]
Properties
PropertyValue
ANSI Nulls OnYes
Quoted Identifier OnYes
Parameters
NameData TypeMax Length (Bytes)
@eventCodevarchar(16)16
@functionCodevarchar(16)16
@groupNamevarchar(8)8
SQL Script
create procedure [dbo].[BAEEventSetupMoveFunctionDown] @eventCode varchar(16),
     @functionCode varchar(16),
     @groupName varchar(8) as
DECLARE @fO AS int;
    Declare @functionOrder AS int;

    SELECT @fO = MAX(FunctionOrder) FROM EventSetupFunctionGroup WHERE EventCode = @eventCode AND GroupName = @groupName;

    SELECT @functionOrder = FunctionOrder FROM EventSetupFunctionGroup WHERE EventCode = @eventCode AND GroupName = @groupName AND FunctionCode = @functionCode;
    
    IF (@functionOrder <@fO)
    BEGIN
        /* Move Function up */
        UPDATE EventSetupFunctionGroup
        SET FunctionOrder = FunctionOrder - 1
        WHERE EventCode = @eventCode AND GroupName = @groupName AND FunctionOrder = @functionOrder + 1;
    
        /* Move function Down */
        UPDATE EventSetupFunctionGroup
        SET FunctionOrder = FunctionOrder + 1
        WHERE EventCode = @eventCode AND FunctionCode = @functionCode;
    END

GO
Uses